﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using Computer_Manager.BUS;
using Computer_Manager.DTO;

namespace Computer_Manager.GUI
{
    public partial class frmAddCus : DevExpress.XtraEditors.XtraForm
    {
        BUS_customer bus_cus = new BUS_customer();
        DTO_customer dto_cus = new DTO_customer();
        frmCustomer obj = (frmCustomer)Application.OpenForms["frmCustomer"];
        public frmAddCus()
        {
            InitializeComponent();
        }

        private void btnAddcus_Click(object sender, EventArgs e)
        {

            if (txtNamecus.Text == "" || txtAddressCus.Text == "" || txtPhoneCus.Text == "")
            {

                if (txtNamecus.Text == "")
                {
                    txtNamecus.Properties.NullValuePrompt = "Vui lòng nhập tên khách hàng";
                    txtNamecus.BackColor = Color.NavajoWhite;
                }
                else
                {
                    txtNamecus.Properties.NullValuePrompt = "";
                    txtNamecus.BackColor = Color.White;
                }
                /////////
                if (txtAddressCus.Text == "")
                {
                    txtAddressCus.Properties.NullValuePrompt = "Vui lòng nhập địa chỉ khách hàng";
                    txtAddressCus.BackColor = Color.NavajoWhite;
                }
                else
                {
                    txtAddressCus.Properties.NullValuePrompt = "";
                    txtAddressCus.BackColor = Color.White;
                }
                ////////
                if (txtPhoneCus.Text == "")
                {
                    txtPhoneCus.Properties.NullValuePrompt = "Vui lòng nhập số điện thoại khách hàng";
                    txtPhoneCus.BackColor = Color.NavajoWhite;
                }
                else
                {
                    txtPhoneCus.Properties.NullValuePrompt = "";
                    txtPhoneCus.BackColor = Color.White;
                }
                MessageBox.Show("Bạn chưa nhập đầy đủ thông tin");
            }
            else
            {
                dto_cus.name_cus = txtNamecus.Text;
                dto_cus.address = txtAddressCus.Text;
                dto_cus.phone = txtPhoneCus.Text;
                dto_cus.email = txtMailCus.Text;
                dto_cus.type = true;
                try
                {
                    bus_cus.customer_insert(dto_cus);
                    MessageBox.Show("Thêm thành công");
                    this.Close();
                    this.Dispose();
                    obj.datagridview();
                }
                catch (Exception)
                {

                    throw;
                }
            }
        }

        private void txtMailCus_Validating(object sender, CancelEventArgs e)
        {
            System.Text.RegularExpressions.Regex rEMail = new System.Text.RegularExpressions.Regex(@"^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$");
            if (txtMailCus.Text.Length > 0)
            {

                if (!rEMail.IsMatch(txtMailCus.Text))
                {

                    MessageBox.Show("Sai định dạng Email", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    txtMailCus.SelectAll();
                    e.Cancel = true;

                }

            }
        }

        private void btnCancel_Click(object sender, EventArgs e)
        {
            txtNamecus.Text = txtPhoneCus.Text = txtAddressCus.Text = txtMailCus.Text = "";
        }

        private void frmAddCus_FormClosed(object sender, FormClosedEventArgs e)
        {
            this.Dispose();
        }
    }
}